package com.dragon.modules.yuegou.entity.merchant;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.merchant.MerchantPayConfigBackType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 商户支付配置表实体类<br>
 * 对应的表为：mer_merchant_pay_config<br>
 * 
 * @author pbuilder generated
 * @date 2020-03-06 14:04:47
 * @company sgy
 * @version 2.0
 */
@TableName("mer_merchant_pay_config")
@ApiModel(description = "商户支付配置表")
public class MerchantPayConfigEntity {

	@ApiModelProperty("商铺id")
	protected String id;

    /** 是否开启微信聚合支付 0否 1是 */
	@ApiModelProperty("是否开启微信聚合支付 0否 1是")
	protected Boolean isWxpayOpen;

    /** 微信子商户号 */
	@ApiModelProperty("微信子商户号")
	protected String subMchId;

    /** 微信支付手续费比例 比如千6 填0.006 */
	@ApiModelProperty("微信支付手续费比例 比如千6 填0.006")
	protected BigDecimal wxProportion;

    /** 是否开启支付宝聚合支付 */
	@ApiModelProperty("是否开启支付宝聚合支付")
	protected Boolean isAlipayOpen;

    /** 2019112769491079 */
	@ApiModelProperty("2019112769491079")
	protected String aliSgyPid;

    /** 支付宝商户pid  开启支付宝支付时必传 */
	@ApiModelProperty("支付宝商户pid  开启支付宝支付时必传")
	protected String aliMerchantPid;

    /** 商户授权token 开启支付宝支付时必传 */
	@ApiModelProperty("商户授权token 开启支付宝支付时必传")
	protected String aliAppAuthToken;

    /** 支付宝手续费比例 比如千分之六 数据库存0.006 */
	@ApiModelProperty("支付宝手续费比例 比如千分之六 数据库存0.006")
	protected BigDecimal aliProportion;

    /** 是否开启悦卡支付 */
	@ApiModelProperty("是否开启悦卡支付")
	protected Boolean isYuecardOpen;

    /**  */
	protected LocalDateTime createdTime;

    /**  */
	protected LocalDateTime modifiedTime;

    /** [枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH */
	@ApiModelProperty("[枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH")
	protected MerchantPayConfigBackType backType;

    /** 返佣比例 */
	@ApiModelProperty("返佣比例")
	protected BigDecimal backProportion;

	/**
	 * 构造一个空商户支付配置表实体对象
	 */
	public MerchantPayConfigEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个商户支付配置表实体对象
	 * 
	 * @param other 其它对象
	 */
	public MerchantPayConfigEntity(MerchantPayConfigEntity other){
		super();
     	this.id = other.id;
     	this.isWxpayOpen = other.isWxpayOpen;
     	this.subMchId = other.subMchId;
     	this.wxProportion = other.wxProportion;
     	this.isAlipayOpen = other.isAlipayOpen;
     	this.aliSgyPid = other.aliSgyPid;
     	this.aliMerchantPid = other.aliMerchantPid;
     	this.aliAppAuthToken = other.aliAppAuthToken;
     	this.aliProportion = other.aliProportion;
     	this.isYuecardOpen = other.isYuecardOpen;
     	this.createdTime = other.createdTime;
     	this.modifiedTime = other.modifiedTime;
     	this.backType = other.backType;
     	this.backProportion = other.backProportion;
	}


	/**
	 * 获取商铺id
	 * 
	 * @return id 商铺id
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置商铺id
	 * 
	 * @param id 商铺id
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取是否开启微信聚合支付 0否 1是
	 * 
	 * @return isWxpayOpen 是否开启微信聚合支付 0否 1是
	 */
	public Boolean getIsWxpayOpen() {
		return isWxpayOpen;
	}
  	
	/**
	 * 设置是否开启微信聚合支付 0否 1是
	 * 
	 * @param isWxpayOpen 是否开启微信聚合支付 0否 1是
	 */
	public void setIsWxpayOpen(Boolean isWxpayOpen) {
		this.isWxpayOpen = isWxpayOpen;
	}

	/**
	 * 获取微信子商户号
	 * 
	 * @return subMchId 微信子商户号
	 */
	public String getSubMchId() {
		return subMchId;
	}
  	
	/**
	 * 设置微信子商户号
	 * 
	 * @param subMchId 微信子商户号
	 */
	public void setSubMchId(String subMchId) {
		this.subMchId = subMchId;
	}

	/**
	 * 获取微信支付手续费比例 比如千6 填0.006
	 * 
	 * @return wxProportion 微信支付手续费比例 比如千6 填0.006
	 */
	public BigDecimal getWxProportion() {
		return wxProportion;
	}
  	
	/**
	 * 设置微信支付手续费比例 比如千6 填0.006
	 * 
	 * @param wxProportion 微信支付手续费比例 比如千6 填0.006
	 */
	public void setWxProportion(BigDecimal wxProportion) {
		this.wxProportion = wxProportion;
	}

	/**
	 * 获取是否开启支付宝聚合支付
	 * 
	 * @return isAlipayOpen 是否开启支付宝聚合支付
	 */
	public Boolean getIsAlipayOpen() {
		return isAlipayOpen;
	}
  	
	/**
	 * 设置是否开启支付宝聚合支付
	 * 
	 * @param isAlipayOpen 是否开启支付宝聚合支付
	 */
	public void setIsAlipayOpen(Boolean isAlipayOpen) {
		this.isAlipayOpen = isAlipayOpen;
	}

	/**
	 * 获取2019112769491079
	 * 
	 * @return aliSgyPid 2019112769491079
	 */
	public String getAliSgyPid() {
		return aliSgyPid;
	}
  	
	/**
	 * 设置2019112769491079
	 * 
	 * @param aliSgyPid 2019112769491079
	 */
	public void setAliSgyPid(String aliSgyPid) {
		this.aliSgyPid = aliSgyPid;
	}

	/**
	 * 获取支付宝商户pid  开启支付宝支付时必传
	 * 
	 * @return aliMerchantPid 支付宝商户pid  开启支付宝支付时必传
	 */
	public String getAliMerchantPid() {
		return aliMerchantPid;
	}
  	
	/**
	 * 设置支付宝商户pid  开启支付宝支付时必传
	 * 
	 * @param aliMerchantPid 支付宝商户pid  开启支付宝支付时必传
	 */
	public void setAliMerchantPid(String aliMerchantPid) {
		this.aliMerchantPid = aliMerchantPid;
	}

	/**
	 * 获取商户授权token 开启支付宝支付时必传
	 * 
	 * @return aliAppAuthToken 商户授权token 开启支付宝支付时必传
	 */
	public String getAliAppAuthToken() {
		return aliAppAuthToken;
	}
  	
	/**
	 * 设置商户授权token 开启支付宝支付时必传
	 * 
	 * @param aliAppAuthToken 商户授权token 开启支付宝支付时必传
	 */
	public void setAliAppAuthToken(String aliAppAuthToken) {
		this.aliAppAuthToken = aliAppAuthToken;
	}

	/**
	 * 获取支付宝手续费比例 比如千分之六 数据库存0.006
	 * 
	 * @return aliProportion 支付宝手续费比例 比如千分之六 数据库存0.006
	 */
	public BigDecimal getAliProportion() {
		return aliProportion;
	}
  	
	/**
	 * 设置支付宝手续费比例 比如千分之六 数据库存0.006
	 * 
	 * @param aliProportion 支付宝手续费比例 比如千分之六 数据库存0.006
	 */
	public void setAliProportion(BigDecimal aliProportion) {
		this.aliProportion = aliProportion;
	}

	/**
	 * 获取是否开启悦卡支付
	 * 
	 * @return isYuecardOpen 是否开启悦卡支付
	 */
	public Boolean getIsYuecardOpen() {
		return isYuecardOpen;
	}
  	
	/**
	 * 设置是否开启悦卡支付
	 * 
	 * @param isYuecardOpen 是否开启悦卡支付
	 */
	public void setIsYuecardOpen(Boolean isYuecardOpen) {
		this.isYuecardOpen = isYuecardOpen;
	}

	/**
	 * 获取
	 * 
	 * @return createdTime 
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置
	 * 
	 * @param createdTime 
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取
	 * 
	 * @return modifiedTime 
	 */
	public LocalDateTime getModifiedTime() {
		return modifiedTime;
	}
  	
	/**
	 * 设置
	 * 
	 * @param modifiedTime 
	 */
	public void setModifiedTime(LocalDateTime modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

	/**
	 * 获取[枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH
	 * 
	 * @return backType [枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH
	 */
	public MerchantPayConfigBackType getBackType() {
		return backType;
	}
  	
	/**
	 * 设置[枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH
	 * 
	 * @param backType [枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH
	 */
	public void setBackType(MerchantPayConfigBackType backType) {
		this.backType = backType;
	}

	/**
	 * 获取返佣比例
	 * 
	 * @return backProportion 返佣比例
	 */
	public BigDecimal getBackProportion() {
		return backProportion;
	}
  	
	/**
	 * 设置返佣比例
	 * 
	 * @param backProportion 返佣比例
	 */
	public void setBackProportion(BigDecimal backProportion) {
		this.backProportion = backProportion;
	}

    public String toString() {
		return new StringBuilder().append("MerchantPayConfigEntity{").
			append("id=").append(id).
			append(",isWxpayOpen=").append(isWxpayOpen).
			append(",subMchId=").append(subMchId).
			append(",wxProportion=").append(wxProportion).
			append(",isAlipayOpen=").append(isAlipayOpen).
			append(",aliSgyPid=").append(aliSgyPid).
			append(",aliMerchantPid=").append(aliMerchantPid).
			append(",aliAppAuthToken=").append(aliAppAuthToken).
			append(",aliProportion=").append(aliProportion).
			append(",isYuecardOpen=").append(isYuecardOpen).
			append(",createdTime=").append(createdTime).
			append(",modifiedTime=").append(modifiedTime).
			append(",backType=").append(backType).
			append(",backProportion=").append(backProportion).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public MerchantPayConfigEntity copy() {
		return new MerchantPayConfigEntity(this);
	}

    /** 商铺id */
	public static final String COL_ID = "id";

    /** 是否开启微信聚合支付 0否 1是 */
	public static final String COL_IS_WXPAY_OPEN = "is_wxpay_open";

    /** 微信子商户号 */
	public static final String COL_SUB_MCH_ID = "sub_mch_id";

    /** 微信支付手续费比例 比如千6 填0.006 */
	public static final String COL_WX_PROPORTION = "wx_proportion";

    /** 是否开启支付宝聚合支付 */
	public static final String COL_IS_ALIPAY_OPEN = "is_alipay_open";

    /** 2019112769491079 */
	public static final String COL_ALI_SGY_PID = "ali_sgy_pid";

    /** 支付宝商户pid  开启支付宝支付时必传 */
	public static final String COL_ALI_MERCHANT_PID = "ali_merchant_pid";

    /** 商户授权token 开启支付宝支付时必传 */
	public static final String COL_ALI_APP_AUTH_TOKEN = "ali_app_auth_token";

    /** 支付宝手续费比例 比如千分之六 数据库存0.006 */
	public static final String COL_ALI_PROPORTION = "ali_proportion";

    /** 是否开启悦卡支付 */
	public static final String COL_IS_YUECARD_OPEN = "is_yuecard_open";

    /**  */
	public static final String COL_CREATED_TIME = "created_time";

    /**  */
	public static final String COL_MODIFIED_TIME = "modified_time";

    /** [枚举]返现方式：0-周-WEEK、1-半月-HALFMONTH、2-月-MONTH */
	public static final String COL_BACK_TYPE = "back_type";

    /** 返佣比例 */
	public static final String COL_BACK_PROPORTION = "back_proportion";
}
